using SqlSugar;

/*
 * @author : xkdong@163.com
 * @date : 2024-3-15
 * @desc : 高血压患者随访记录表
 */
namespace YOUYOU.Models.Entities.DBModels
{
    /// <summary>
    /// 高血压患者随访记录表
    /// </summary>
    [SugarTable("follow_hypertensionfollowup", TableDescription = "高血压患者随访记录表")]
    public class FollowHypertensionfollowup
    {
        /// <summary>
        /// 随访记录ID
        /// </summary>
        [SugarColumn(ColumnName = "ID", IsIdentity = true, IsPrimaryKey = true)]
        public int ID { get; set; }

        /// <summary>
        /// 患者ID
        /// </summary>
        [SugarColumn(ColumnName = "PatientID")]
        public string? PatientID { get; set; }
        public string? DataMarker { get; set; }
        /// <summary>
        /// 随访医生ID
        /// </summary>
        [SugarColumn(ColumnName = "DoctorID")]
        public int? DoctorID { get; set; }

        /// <summary>
        /// 病历号/档案号
        /// </summary>
        [SugarColumn(ColumnName = "MedicalRecordNumber")]
        public string? MedicalRecordNumber { get; set; }

        /// <summary>
        /// 随访日期和时间
        /// </summary>
        [SugarColumn(ColumnName = "FollowUpDate")]
        public DateTime FollowUpDate { get; set; }

        /// <summary>
        /// 随访方式（1.门诊 2.家庭 3.电话）
        /// </summary>
        [SugarColumn(ColumnName = "FollowUpMethod")]
        public int? FollowUpMethod { get; set; }

        /// <summary>
        /// 症状（关联字典表）
        /// </summary>
        [SugarColumn(ColumnName = "SymptomsID")]
        public string? SymptomsID { get; set; }

        /// <summary>
        /// 其他症状
        /// </summary>
        [SugarColumn(ColumnName = "SympomsOther")]
        public string? SympomsOther { get; set; }

        /// <summary>
        /// 血压
        /// </summary>
        [SugarColumn(ColumnName = "BloodPressure")]
        public string? BloodPressure { get; set; }
    
        /// <summary>
        /// 收缩压
        /// </summary>
        [SugarColumn(ColumnName = "SystolicPressures")]
        public string? SystolicPressures { get; set; }
        /// <summary>
        /// 舒张压
        /// </summary>
        [SugarColumn(ColumnName = "DiastolicPressure")]
        public string? DiastolicPressure { get; set; }

        /// <summary>
        /// 心率
        /// </summary>
        [SugarColumn(ColumnName = "HeartRate")]
        public int? HeartRate { get; set; }

        /// <summary>
        /// 体重（kg）
        /// </summary>
        [SugarColumn(ColumnName = "Weight")]
        public decimal? Weight { get; set; }
         /// <summary>
        /// 身高
        /// </summary>
        [SugarColumn(ColumnName = "Height")]
        public decimal? Height { get; set; }

        /// <summary>
        /// 腰围（cm）
        /// </summary>
        [SugarColumn(ColumnName = "Waistline")]
        public int? Waistline { get; set; }

        /// <summary>
        /// 其他体征
        /// </summary>
        [SugarColumn(ColumnName = "BodyStatusOther")]
        public string? BodyStatusOther { get; set; }

        /// <summary>
        /// 日吸烟量（支）
        /// </summary>
        [SugarColumn(ColumnName = "SmokingAmount")]
        public int? SmokingAmount { get; set; }

        /// <summary>
        /// 白酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingLiquor")]
        public int? DrinkingLiquor { get; set; }

        /// <summary>
        /// 啤酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingBeer")]
        public int? DrinkingBeer { get; set; }

        /// <summary>
        /// 葡萄酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingWine")]
        public int? DrinkingWine { get; set; }

        /// <summary>
        /// 其他酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingOther")]
        public int? DrinkingOther { get; set; }

        /// <summary>
        /// 运动强度
        /// </summary>
        [SugarColumn(ColumnName = "ExerciseStrongLever")]
        public int? ExerciseStrongLever { get; set; }

        /// <summary>
        /// 运动次数每周
        /// </summary>
        [SugarColumn(ColumnName = "ExerciseTimesWeek")]
        public int? ExerciseTimesWeek { get; set; }

        /// <summary>
        /// 每次运动时间
        /// </summary>
        [SugarColumn(ColumnName = "ExerciseMinutesTimes")]
        public int? ExerciseMinutesTimes { get; set; }

        /// <summary>
        /// 摄盐情况（1轻 2中 3重）
        /// </summary>
        [SugarColumn(ColumnName = "SaltIntakeLevel")]
        public int? SaltIntakeLevel { get; set; }

        /// <summary>
        /// 心理调整（1.良好 2.一般 3.差）
        /// </summary>
        [SugarColumn(ColumnName = "MentalAdjustment")]
        public int? MentalAdjustment { get; set; }

        /// <summary>
        /// 遵医行为（1.良好 2.一般 3.差）
        /// </summary>
        [SugarColumn(ColumnName = "ComplianceBehavior")]
        public int? ComplianceBehavior { get; set; }

        /// <summary>
        /// 辅助检查
        /// </summary>
        [SugarColumn(ColumnName = "AuxiliaryExamination")]
        public string? AuxiliaryExamination { get; set; }

        /// <summary>
        /// 服药依从性（1.规律 2.间断 3.不服药）
        /// </summary>
        [SugarColumn(ColumnName = "MedicationAdherence")]
        public int? MedicationAdherence { get; set; }

        /// <summary>
        /// 有无药物不良反应
        /// </summary>
        [SugarColumn(ColumnName = "MedicationAdverseReaction")]
        public bool? MedicationAdverseReaction { get; set; }

        /// <summary>
        /// 不良反应药物
        /// </summary>
        [SugarColumn(ColumnName = "MedicaltionAdverse")]
        public string? MedicaltionAdverse { get; set; }

        /// <summary>
        /// 此次随访分类（1.控制满意 2.控制不满意 3.不良反应 4.并发症）
        /// </summary>
        [SugarColumn(ColumnName = "FollowUpCategory")]
        public int? FollowUpCategory { get; set; }

        /// <summary>
        /// 备注/附加信息
        /// </summary>
        [SugarColumn(ColumnName = "AdditionalNotes")]
        public string? AdditionalNotes { get; set; }
        /// <summary>
        /// 计划ID
        ///</summary>
        [SugarColumn(ColumnName = "PlanId")]
        public int? PlanId { get; set; }

        /// <summary>
        /// 转诊原因
        /// </summary>
        public string? ReferralReason { get; set; }
        /// <summary>
        /// 转诊机构科别
        /// </summary>
        public string? ReferralDept { get; set; }
        /// <summary>
        /// 0启用1终止随访
        /// </summary>
        //[SugarColumn(ColumnName = "Start")]
        // public int? Start { get; set; }

        /// <summary>
        /// 下次随访日期
        /// </summary>
        public DateTime? NextFollowDate { get; set; }
        /// <summary>
        /// 病种区分
        /// </summary>
        [SugarColumn(ColumnName = "Medication")]
        public string? Medication { get; set; }
        ///// <summary>
        ///// 病人档案表
        ///// </summary>
        //[Navigate(NavigateType.OneToOne, nameof(PatientID), nameof(RecordPatientrecords.PatientId))]
        //public RecordPatientrecords Patientrecords { get; set; }

        ///// <summary>
        ///// 人员字典
        ///// </summary>
        //[Navigate(NavigateType.OneToOne, nameof(DoctorID), nameof(SysUser.ID))]
        //public SysUser DoctorUser { get; set; }

        ///// <summary>
        ///// 随访记录用药情况
        ///// </summary>
        //[Navigate(NavigateType.OneToMany, nameof(FollowMedicalinfo.FollowID), nameof(ID))]
        //public List<FollowMedicalinfo> medicalinfos { get; set; }
    }

    public class FollowHypertensionfollowupGw
    {
        /// <summary>
        /// 随访记录ID
        /// </summary>
        [SugarColumn(ColumnName = "ID", IsIdentity = true, IsPrimaryKey = true)]
        public int ID { get; set; }

        /// <summary>
        /// 患者ID
        /// </summary>
        [SugarColumn(ColumnName = "PatientID")]
        public string? PatientID { get; set; }
        public string? IdCard { get; set; }
        /// <summary>
        /// 随访医生ID
        /// </summary>
        [SugarColumn(ColumnName = "DoctorID")]
        public string? DoctorID { get; set; }

        /// <summary>
        /// 病历号/档案号
        /// </summary>
        [SugarColumn(ColumnName = "MedicalRecordNumber")]
        public string? MedicalRecordNumber { get; set; }

        /// <summary>
        /// 随访日期和时间
        /// </summary>
        [SugarColumn(ColumnName = "FollowUpDate")]
        public DateTime FollowUpDate { get; set; }

        /// <summary>
        /// 随访方式（1.门诊 2.家庭 3.电话）
        /// </summary>
        [SugarColumn(ColumnName = "FollowUpMethod")]
        public int? FollowUpMethod { get; set; }

        /// <summary>
        /// 症状（关联字典表）
        /// </summary>
        [SugarColumn(ColumnName = "SymptomsID")]
        public string? SymptomsID { get; set; }

        /// <summary>
        /// 其他症状
        /// </summary>
        [SugarColumn(ColumnName = "SympomsOther")]
        public string? SympomsOther { get; set; }

        /// <summary>
        /// 血压
        /// </summary>
        [SugarColumn(ColumnName = "BloodPressure")]
        public string? BloodPressure { get; set; }

        /// <summary>
        /// 心率
        /// </summary>
        [SugarColumn(ColumnName = "HeartRate")]
        public int? HeartRate { get; set; }

        /// <summary>
        /// 体重（kg）
        /// </summary>
        [SugarColumn(ColumnName = "Weight")]
        public decimal? Weight { get; set; }
        /// <summary>
        /// 身高
        /// </summary>
        [SugarColumn(ColumnName = "Height")]
        public decimal? Height { get; set; }

        /// <summary>
        /// 腰围（cm）
        /// </summary>
        [SugarColumn(ColumnName = "Waistline")]
        public string? Waistline { get; set; }

        /// <summary>
        /// 其他体征
        /// </summary>
        [SugarColumn(ColumnName = "BodyStatusOther")]
        public string? BodyStatusOther { get; set; }

        /// <summary>
        /// 日吸烟量（支）
        /// </summary>
        [SugarColumn(ColumnName = "SmokingAmount")]
        public int? SmokingAmount { get; set; }

        /// <summary>
        /// 白酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingLiquor")]
        public int? DrinkingLiquor { get; set; }

        /// <summary>
        /// 啤酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingBeer")]
        public string? DrinkingBeer { get; set; }

        /// <summary>
        /// 葡萄酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingWine")]
        public string? DrinkingWine { get; set; }

        /// <summary>
        /// 其他酒日饮量
        /// </summary>
        [SugarColumn(ColumnName = "DrinkingOther")]
        public string? DrinkingOther { get; set; }

        /// <summary>
        /// 运动强度
        /// </summary>
        [SugarColumn(ColumnName = "ExerciseStrongLever")]
        public string? ExerciseStrongLever { get; set; }

        /// <summary>
        /// 运动次数每周
        /// </summary>
        [SugarColumn(ColumnName = "ExerciseTimesWeek")]
        public int? ExerciseTimesWeek { get; set; }

        /// <summary>
        /// 每次运动时间
        /// </summary>
        [SugarColumn(ColumnName = "ExerciseMinutesTimes")]
        public int? ExerciseMinutesTimes { get; set; }

        /// <summary>
        /// 摄盐情况（1轻 2中 3重）
        /// </summary>
        [SugarColumn(ColumnName = "SaltIntakeLevel")]
        public int? SaltIntakeLevel { get; set; }

        /// <summary>
        /// 心理调整（1.良好 2.一般 3.差）
        /// </summary>
        [SugarColumn(ColumnName = "MentalAdjustment")]
        public int? MentalAdjustment { get; set; }

        /// <summary>
        /// 遵医行为（1.良好 2.一般 3.差）
        /// </summary>
        [SugarColumn(ColumnName = "ComplianceBehavior")]
        public int? ComplianceBehavior { get; set; }

        /// <summary>
        /// 辅助检查
        /// </summary>
        [SugarColumn(ColumnName = "AuxiliaryExamination")]
        public string? AuxiliaryExamination { get; set; }

        /// <summary>
        /// 服药依从性（1.规律 2.间断 3.不服药）
        /// </summary>
        [SugarColumn(ColumnName = "MedicationAdherence")]
        public int? MedicationAdherence { get; set; }

        /// <summary>
        /// 有无药物不良反应
        /// </summary>
        [SugarColumn(ColumnName = "MedicationAdverseReaction")]
        public bool? MedicationAdverseReaction { get; set; }

        /// <summary>
        /// 不良反应药物
        /// </summary>
        [SugarColumn(ColumnName = "MedicaltionAdverse")]
        public string? MedicaltionAdverse { get; set; }

        /// <summary>
        /// 此次随访分类（1.控制满意 2.控制不满意 3.不良反应 4.并发症）
        /// </summary>
        [SugarColumn(ColumnName = "FollowUpCategory")]
        public int? FollowUpCategory { get; set; }

        /// <summary>
        /// 备注/附加信息
        /// </summary>
        [SugarColumn(ColumnName = "AdditionalNotes")]
        public string? AdditionalNotes { get; set; }
        /// <summary>
        /// 计划ID
        ///</summary>
        [SugarColumn(ColumnName = "PlanId")]
        public string? PlanId { get; set; }

        /// <summary>
        /// 转诊原因
        /// </summary>
        public string? ReferralReason { get; set; }
        /// <summary>
        /// 转诊机构科别
        /// </summary>
        public string? ReferralDept { get; set; }
        /// <summary>
        /// 0启用1终止随访
        /// </summary>
        //[SugarColumn(ColumnName = "Start")]
        // public int? Start { get; set; }

        /// <summary>
        /// 下次随访日期
        /// </summary>
        public DateTime? NextFollowDate { get; set; }
        /// <summary>
        /// 病种区分
        /// </summary>
        [SugarColumn(ColumnName = "Medication")]
        public string? Medication { get; set; }
    }
}